negotiator.analysis
Class ParetoFrontier

java.lang.Object
  extended by negotiator.analysis.ParetoFrontier

public class ParetoFrontier
extends java.lang.Object

Class which stores the Pareto-frontier. This class can be used to easily add bids to the Pareto-frontier when calculating it.

Author:
Tim Baarslag

Constructor Summary
ParetoFrontier()
          Create an empty list to store the Pareto-frontier.
 
Method Summary
 java.util.List<BidPoint> getFrontier()
          Returns the Pareto-optimal frontier.
 boolean isBelowFrontier(BidPoint bid)
          Returns true if the given BidPoint is not part of the Pareto-frontier.
 void mergeIntoFrontier(BidPoint bidpoint)
          Determines if a bid should be added to the Pareto-frontier.
 void sort()
          Order the bids based on the utility for agent A.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ParetoFrontier

public ParetoFrontier()
Create an empty list to store the Pareto-frontier.

Method Detail

mergeIntoFrontier

public void mergeIntoFrontier(BidPoint bidpoint)
Determines if a bid should be added to the Pareto-frontier. A bid is added when it strictly dominates a bid in the Pareto-frontier OR when it is equal to a bid in the Pareto-frontier.

Parameters:
bidpoint - bid to be added to the Pareto-frontier.

isBelowFrontier

public boolean isBelowFrontier(BidPoint bid)
Returns true if the given BidPoint is not part of the Pareto-frontier.

Parameters:
bid - to be checked if it is Pareto-optimal.
Returns:
true if NOT pareto-optimal bid.

sort

public void sort()
Order the bids based on the utility for agent A.


getFrontier

public java.util.List<BidPoint> getFrontier()
Returns the Pareto-optimal frontier.

Returns:
Pareto-optimal frontier.